[INFO] fetching crate thread-services 0.1.0...
[INFO] testing thread-services-0.1.0 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate thread-services 0.1.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate thread-services 0.1.0
[INFO] finished tweaking crates.io crate thread-services 0.1.0
[INFO] tweaked toml for crates.io crate thread-services 0.1.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate thread-services 0.1.0 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate thread-services 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a2b35c866c2665b65774be918d8bc4ba3837eceafb6321e858abd1ca10791f32
[INFO] running `Command { std: "docker" "start" "-a" "a2b35c866c2665b65774be918d8bc4ba3837eceafb6321e858abd1ca10791f32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a2b35c866c2665b65774be918d8bc4ba3837eceafb6321e858abd1ca10791f32", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a2b35c866c2665b65774be918d8bc4ba3837eceafb6321e858abd1ca10791f32", kill_on_drop: false }`
[INFO] [stdout] a2b35c866c2665b65774be918d8bc4ba3837eceafb6321e858abd1ca10791f32
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0553fe6ace43f5d05299833df77d970616b84c9fa2577c4a16d7f66aef1efb9f
[INFO] running `Command { std: "docker" "start" "-a" "0553fe6ace43f5d05299833df77d970616b84c9fa2577c4a16d7f66aef1efb9f", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling libmimalloc-sys v0.1.44
[INFO] [stderr]    Compiling blake3 v1.8.3
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling rapidhash v4.4.1
[INFO] [stderr]    Compiling thread-utilities v0.1.3
[INFO] [stderr]    Compiling mimalloc v0.1.48
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling recoco-utils v0.2.1
[INFO] [stderr]    Compiling thread-services v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.01s
[INFO] running `Command { std: "docker" "inspect" "0553fe6ace43f5d05299833df77d970616b84c9fa2577c4a16d7f66aef1efb9f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0553fe6ace43f5d05299833df77d970616b84c9fa2577c4a16d7f66aef1efb9f", kill_on_drop: false }`
[INFO] [stdout] 0553fe6ace43f5d05299833df77d970616b84c9fa2577c4a16d7f66aef1efb9f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4612d1adf608246cb657dbcbbc2ae43a7daf21dc133d3fac0f7697f5b91f6eca
[INFO] running `Command { std: "docker" "start" "-a" "4612d1adf608246cb657dbcbbc2ae43a7daf21dc133d3fac0f7697f5b91f6eca", kill_on_drop: false }`
[INFO] [stderr]    Compiling thread-services v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.01s
[INFO] running `Command { std: "docker" "inspect" "4612d1adf608246cb657dbcbbc2ae43a7daf21dc133d3fac0f7697f5b91f6eca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4612d1adf608246cb657dbcbbc2ae43a7daf21dc133d3fac0f7697f5b91f6eca", kill_on_drop: false }`
[INFO] [stdout] 4612d1adf608246cb657dbcbbc2ae43a7daf21dc133d3fac0f7697f5b91f6eca
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e27e0b7b05e2ded338da88813169c70532bef450244dca8bd9616b8d30d0f7d5
[INFO] running `Command { std: "docker" "start" "-a" "e27e0b7b05e2ded338da88813169c70532bef450244dca8bd9616b8d30d0f7d5", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/thread_services-a3ccdf2216a493f8)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test conversion::tests::test_create_symbol_info ... ok
[INFO] [stdout] test conversion::tests::test_compute_content_fingerprint ... ok
[INFO] [stdout] test conversion::tests::test_modifier_to_visibility ... ok
[INFO] [stdout] test conversion::tests::test_node_kind_to_symbol_kind ... ok
[INFO] [stdout] test error::tests::test_contextual_error_display ... ok
[INFO] [stdout] test error::tests::test_recovery_info ... ok
[INFO] [stdout] test error::tests::test_error_context ... ok
[INFO] [stdout] test tests::test_memory_context ... ok
[INFO] [stdout] test traits::analyzer::tests::test_analyzer_capabilities_default ... ok
[INFO] [stdout] test traits::analyzer::tests::test_analysis_config_default ... ok
[INFO] [stdout] test traits::parser::tests::test_parser_capabilities_default ... ok
[INFO] [stdout] test traits::parser::tests::test_parser_config_default ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests thread_services
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/lib.rs - (line 51) - compile ... FAILED
[INFO] [stdout] test src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 76) - compile ... FAILED
[INFO] [stdout] test src/lib.rs - (line 35) - compile ... FAILED
[INFO] [stdout] test src/traits/parser.rs - traits::parser::CodeParser (line 74) - compile ... FAILED
[INFO] [stdout] test src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 33) - compile ... FAILED
[INFO] [stdout] test src/traits/parser.rs - traits::parser::CodeParser (line 43) - compile ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - (line 51) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/lib.rs:58:62
[INFO] [stdout]    |
[INFO] [stdout] 58 |     documents: &[thread_services::types::ParsedDocument<impl thread_ast_engine::source::Doc>]
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 76) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:83:30
[INFO] [stdout]    |
[INFO] [stdout] 83 |     async fn find_pattern<D: thread_ast_engine::source::Doc>(&self, document: &ParsedDocument<D>, pattern: &str, context: &AnalysisC...
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:84:35
[INFO] [stdout]    |
[INFO] [stdout] 84 |     async fn find_all_patterns<D: thread_ast_engine::source::Doc>(&self, document: &ParsedDocument<D>, patterns: &[&str], context: &...
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |     async fn replace_pattern<D: thread_ast_engine::source::Doc>(&self, document: &mut ParsedDocument<D>, pattern: &str, replacement:...
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:86:87
[INFO] [stdout]    |
[INFO] [stdout] 86 | ...: &[ParsedDocument<impl thread_ast_engine::source::Doc>], context: &AnalysisContext) -> Result<Vec<thread_services::types::CrossF...
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:90:35
[INFO] [stdout]    |
[INFO] [stdout] 90 | let documents: Vec<ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>>> = vec![];
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: missing generics for trait `CodeAnalyzer`
[INFO] [stdout]    --> src/traits/analyzer.rs:82:6
[INFO] [stdout]     |
[INFO] [stdout]  82 | impl CodeAnalyzer for MyAnalyzer {
[INFO] [stdout]     |      ^^^^^^^^^^^^ expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 1 generic parameter: `D`
[INFO] [stdout]    --> src/traits/analyzer.rs:119:11
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub trait CodeAnalyzer<D: Doc + Send + Sync>: Send + Sync {
[INFO] [stdout]     |           ^^^^^^^^^^^^ -
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout]  82 | impl CodeAnalyzer<D> for MyAnalyzer {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:90:74
[INFO] [stdout]    |
[INFO] [stdout] 90 | let documents: Vec<ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>>> = vec![];
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 35) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/lib.rs:40:54
[INFO] [stdout]    |
[INFO] [stdout] 40 | async fn analyze_code(document: &ParsedDocument<impl thread_ast_engine::source::Doc>) {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/traits/parser.rs - traits::parser::CodeParser (line 74) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:82:166
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>>, thread_services::error::ServiceErr...
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:83:137
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>>, thread_services::error::ServiceErr...
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:84:155
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>>>, thread_services::error::ServiceEr...
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: missing generics for trait `CodeParser`
[INFO] [stdout]    --> src/traits/parser.rs:81:6
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl CodeParser for MyParser {
[INFO] [stdout]     |      ^^^^^^^^^^ expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 1 generic parameter: `D`
[INFO] [stdout]    --> src/traits/parser.rs:110:11
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub trait CodeParser<D: Doc + Send + Sync>: Send + Sync {
[INFO] [stdout]     |           ^^^^^^^^^^ -
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl CodeParser<D> for MyParser {
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:82:60
[INFO] [stdout]    |
[INFO] [stdout] 82 | ... content: &str, language: thread_language::SupportLang, context: &AnalysisContext) -> Result<thread_services::types::ParsedDocume...
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:82:205
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...gine::tree_sitter::StrDoc<thread_language::SupportLang>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:83:176
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...gine::tree_sitter::StrDoc<thread_language::SupportLang>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:84:194
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...gine::tree_sitter::StrDoc<thread_language::SupportLang>>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:86:40
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn supported_languages(&self) -> &[thread_language::SupportLang] { todo!() }
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 33) stdout ----
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:40:30
[INFO] [stdout]    |
[INFO] [stdout] 40 |     async fn find_pattern<D: thread_ast_engine::source::Doc>(&self, document: &ParsedDocument<D>, pattern: &str, context: &AnalysisC...
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:41:35
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn find_all_patterns<D: thread_ast_engine::source::Doc>(&self, document: &ParsedDocument<D>, patterns: &[&str], context: &...
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:42:33
[INFO] [stdout]    |
[INFO] [stdout] 42 |     async fn replace_pattern<D: thread_ast_engine::source::Doc>(&self, document: &mut ParsedDocument<D>, pattern: &str, replacement:...
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:43:87
[INFO] [stdout]    |
[INFO] [stdout] 43 | ...: &[ParsedDocument<impl thread_ast_engine::source::Doc>], context: &AnalysisContext) -> Result<Vec<thread_services::types::CrossF...
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:47:30
[INFO] [stdout]    |
[INFO] [stdout] 47 | let document: ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>> = todo!();
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: missing generics for trait `CodeAnalyzer`
[INFO] [stdout]    --> src/traits/analyzer.rs:39:6
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl CodeAnalyzer for MyAnalyzer {
[INFO] [stdout]     |      ^^^^^^^^^^^^ expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 1 generic parameter: `D`
[INFO] [stdout]    --> src/traits/analyzer.rs:119:11
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub trait CodeAnalyzer<D: Doc + Send + Sync>: Send + Sync {
[INFO] [stdout]     |           ^^^^^^^^^^^^ -
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl CodeAnalyzer<D> for MyAnalyzer {
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_language` in this scope
[INFO] [stdout]   --> src/traits/analyzer.rs:47:69
[INFO] [stdout]    |
[INFO] [stdout] 47 | let document: ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<thread_language::SupportLang>> = todo!();
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/traits/parser.rs - traits::parser::CodeParser (line 43) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `thread_language`
[INFO] [stdout]   --> src/traits/parser.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | use thread_language::SupportLang;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_language`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_language`, use `cargo add thread_language` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:51:149
[INFO] [stdout]    |
[INFO] [stdout] 51 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<SupportLang>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:52:137
[INFO] [stdout]    |
[INFO] [stdout] 52 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<SupportLang>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find module or crate `thread_ast_engine` in this scope
[INFO] [stdout]   --> src/traits/parser.rs:53:155
[INFO] [stdout]    |
[INFO] [stdout] 53 | ...::types::ParsedDocument<thread_ast_engine::tree_sitter::StrDoc<SupportLang>>>, thread_services::error::ServiceError> { todo!() }
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `thread_ast_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `thread_ast_engine`, use `cargo add thread_ast_engine` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: missing generics for trait `CodeParser`
[INFO] [stdout]    --> src/traits/parser.rs:50:6
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl CodeParser for MyParser {
[INFO] [stdout]     |      ^^^^^^^^^^ expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 1 generic parameter: `D`
[INFO] [stdout]    --> src/traits/parser.rs:110:11
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub trait CodeParser<D: Doc + Send + Sync>: Send + Sync {
[INFO] [stdout]     |           ^^^^^^^^^^ -
[INFO] [stdout] help: add missing generic argument
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl CodeParser<D> for MyParser {
[INFO] [stdout]     |                +++
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 35)
[INFO] [stdout]     src/lib.rs - (line 51)
[INFO] [stdout]     src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 33)
[INFO] [stdout]     src/traits/analyzer.rs - traits::analyzer::CodeAnalyzer (line 76)
[INFO] [stdout]     src/traits/parser.rs - traits::parser::CodeParser (line 43)
[INFO] [stdout]     src/traits/parser.rs - traits::parser::CodeParser (line 74)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 6 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.75s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.47s; merged doctests compilation took 0.71s
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "e27e0b7b05e2ded338da88813169c70532bef450244dca8bd9616b8d30d0f7d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e27e0b7b05e2ded338da88813169c70532bef450244dca8bd9616b8d30d0f7d5", kill_on_drop: false }`
[INFO] [stdout] e27e0b7b05e2ded338da88813169c70532bef450244dca8bd9616b8d30d0f7d5
